package com.hlkj.pay.app.merchant.ext.impl.lakala.dto.resp;
/*
 * Hlpay-Plus aggregate payment system.
 * Copyright (c) 2024-2025 Hlpay Team Copyright has the right of final interpretation.
 */

import lombok.Data;

import java.util.List;

/**
 * @author HlpayTeam
 * @date 2024/12/11 10:07
 */
@Data
public class LakalaPayOrderRes {
    /**
     * need_query : 1
     * out_trade_no : FD660E1FAA3A4470933CDEDAE1EC1D8E
     * trade_no : 2021090766210003630077
     * log_no : 66210003630077
     * acc_trade_no :
     * account_type : WECHAT
     * total_amount : 123
     * payer_amount :
     * acc_settle_amount :
     * acc_mdiscount_amount :
     * acc_discount_amount :
     * trade_time : 20210907150258
     * bank_type :
     * card_type :
     */

    private String need_query;
    private String out_trade_no;
    private String trade_no;
    private String log_no;
    private String acc_trade_no;
    private String account_type;
    private String total_amount;
    private String payer_amount;
    private String acc_settle_amount;
    private String acc_mdiscount_amount;
    private String acc_discount_amount;
    private String trade_time;
    private String bank_type;
    private String card_type;

    /**
     * settle_term_no :
     * trade_state : SUCCESS
     * trade_state_desc : 交易成功
     * user_id1 : olpr-0kUcyJIbVhYmAsBvoZuB4TI
     * user_id2 : oUpF8uE150tsN4W00ieTusZcK70s
     * acc_activity_id :
     * up_coupon_info :
     * trade_info :
     */

    private String settle_term_no;
    private String trade_state;
    private String trade_state_desc;
    private String user_id1;
    private String user_id2;
    private String acc_activity_id;
    private String up_coupon_info;
    private String trade_info;

    /**
     * split_attr : M
     * split_info : [{"sub_trade_no":"2021121366210004980003","sub_log_no":"66210004980003","out_sub_trade_no":"20211213000007","merchant_no":"822126090640003","term_no":"47781282","amount":"2"},{"sub_trade_no":"2021121366210004980004","sub_log_no":"66210004980004","out_sub_trade_no":"20211213000008","merchant_no":"822290070111135","term_no":"29034705","amount":"3"}]
     * settle_merchant_no :
     */

    private String split_attr;
    private String settle_merchant_no;
    /**
     * sub_trade_no : 2021121366210004980003
     * sub_log_no : 66210004980003
     * out_sub_trade_no : 20211213000007
     * merchant_no : 822126090640003
     * term_no : 47781282
     * amount : 2
     */

    private List<SplitInfoBean> split_info;
    private List<RefundSplitInfoBean> refund_split_info;


    @Data
    public static class SplitInfoBean {
        private String sub_trade_no;
        private String sub_log_no;
        private String out_sub_trade_no;
        private String merchant_no;
        private String term_no;
        private String amount;
    }
    @Data
    public static class RefundSplitInfoBean {
        private String out_sub_trade_no;
        private String merchant_no;
        private String term_no;
        private String refund_amount;
        private String sub_trade_no;
        private String sub_log_no;
        private String trade_state;
        private String result_code;
        private String result_msg;
    }
}
